.\"	$OpenBSD: login.1,v 1.31 2015/01/16 16:01:46 schwarze Exp $
.\"
.\" Copyright (c) 1980, 1990, 1993
.\"	The Regents of the University of California.  All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" 1. Redistributions of source code must retain the above copyright
.\"    notice, this list of conditions and the following disclaimer.
.\" 2. Redistributions in binary form must reproduce the above copyright
.\"    notice, this list of conditions and the following disclaimer in the
.\"    documentation and/or other materials provided with the distribution.
.\" 3. Neither the name of the University nor the names of its contributors
.\"    may be used to endorse or promote products derived from this software
.\"    without specific prior written permission.
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\"	@(#)login.1	8.2 (Berkeley) 5/5/94
.\"
.Dd $Mdocdate: January 16 2015 $
.Dt LOGIN 1
.Os
.Sh NAME
.Nm login
.Nd log into the computer
.Sh SYNOPSIS
.Nm login
.Op Fl fp
.Op Fl h Ar hostname
.Op Fl L Ar local-addr
.Op Fl R Ar remote-addr
.Op Fl u Ar username
.Op Ar user
.Sh DESCRIPTION
The
.Nm
utility logs users (and pseudo-users) into the computer system.
.Pp
If no user is specified, or if a user is specified and authentication
of the user fails,
.Nm
prompts for a user name.
Authentication of users is normally done via passwords, though
external authentication mechanisms may be used (see
.Xr login.conf 5 ) .
To specify the alternate authentication mechanism
.Va style ,
the string
.Pf : Va style
is appended to the user name (i.e.,
.Ar user : Ns Va style ) .
.Pp
The options are as follows:
.Bl -tag -width Ds
.It Fl f
The
.Fl f
option is used when a user name is specified to indicate that proper
authentication has already been done and that no password need be
requested.
This option may only be used by the superuser.
.It Fl h Ar hostname
Specifies the host from which the connection was received.
This option may only be used by the superuser.
.It Fl L Ar local-addr
The
.Fl L
option specifies the local address of a socket.
This information is passed on to any classify script (see
.Xr login.conf 5 ) .
.It Fl p
By default,
.Nm
discards any previous environment.
The
.Fl p
option disables this behavior.
.It Fl R Ar remote-addr
The
.Fl R
option specifies the remote address of a socket.
This information is passed on to any classify script (see
.Xr login.conf 5 ) .
.It Fl u Ar username
Specifies the remote user that initiated the connection.
This option may only be used by the superuser.
.El
.Pp
If the file
.Pa /etc/nologin
exists (and the
.Dq ignorenologin
boolean is not set in the user's login class),
.Nm
displays its contents to the user and exits.
This is used by
.Xr shutdown 8
to prevent users from logging in when the system is about to go down.
.Pp
If the file
.Pa /etc/fbtab
exists,
.Nm
changes the protection and ownership of certain devices specified in this
file.
.Pp
If the file
.Pa /var/log/failedlogin
exists,
.Nm
will record failed login attempts in this file.
.Pp
Immediately after logging a user in,
.Nm
displays the system copyright notice, the date and time the user last
logged in, the date and time of the last unsuccessful login (if the file
.Pa /var/log/failedlogin
exists), the message of the day as well as other information.
If the file
.Dq Pa .hushlogin
exists in the user's home directory, all of these messages are suppressed.
This is to simplify logins for non-human users.
.Nm
then records an entry in the
.Xr wtmp 5
and
.Xr utmp 5
files and executes the user's command interpreter.
.Pp
.Nm
enters information into the environment (see
.Xr environ 7 )
specifying the user's home directory
.Pq Ev HOME ,
command interpreter
.Pq Ev SHELL ,
search path
.Pq Ev PATH ,
terminal type
.Pq Ev TERM ,
and user name
.Po both Ev LOGNAME and Ev USER
.Pc .
.Pp
The standard shells,
.Xr csh 1
and
.Xr sh 1 ,
do not fork before executing the
.Nm
utility.
.Pp
Note that if
.Nm
is invoked by a non-root user, it will execute
.Xr su 1
in
.Nm
emulation mode instead.
.Sh ENVIRONMENT
.Nm
sets the following environment variables:
.Bl -tag -width REMOTEHOST
.It Ev HOME
The user's home directory, as specified by the password database.
.It Ev SHELL
The user's shell, as specified by the password database.
.It Ev TERM
The user's terminal type, if it can be determined.
.It Ev LOGNAME
The user's login name.
.It Ev USER
Same as
.Ev LOGNAME .
.It Ev MAIL
The user's mailbox.
.It Ev REMOTEHOST
The name of the host from which the user logged in, if the
.Fl h
flag was specified.
.It Ev REMOTEUSER
The name of the remote user who initiated the connection, if the
.Fl u
flag was specified.
.El
.Pp
Other environment variables may be specified in
.Pa /etc/login.conf
via the
.Dq setenv
capability.
.Sh FILES
.Bl -tag -width /var/log/failedlogin -compact
.It Pa /etc/fbtab
changes device protections
.It Pa /etc/login.conf
login configuration
.It Pa /etc/motd
message-of-the-day
.It Pa /etc/nologin
disallows logins
.It Pa /var/log/failedlogin
failed login account records
.It Pa /var/log/lastlog
last login account records
.It Pa /var/log/wtmp
login account records
.It Pa /var/mail/user
system mailboxes
.It Pa /var/run/utmp
current logins
.It Pa \&.hushlogin
makes login quieter
.El
.Sh SEE ALSO
.Xr chpass 1 ,
.Xr passwd 1 ,
.Xr su 1 ,
.Xr telnet 1 ,
.Xr getpass 3 ,
.Xr setusercontext 3 ,
.Xr fbtab 5 ,
.Xr login.conf 5 ,
.Xr utmp 5 ,
.Xr environ 7
.Sh HISTORY
A
.Nm
utility appeared in
.At v3 .
